(Bug: if the video is black use the QuickTime video instead) Reverse engineers have to analyze more and more code these days, be it is investigation of malware, software security assessment, or RE for interoperability. While plain C code is quite familiar by now, C++ offers new challenges with inheritance, virtual functions, exception handling and so on. I will describe the common problems encountered in C++ reversing and how to deal with them. We'll also see how to get nice readable code using just a C decompiler.
Igor Skochinsky was interested in "how stuff works" since childhood and got into software reverse engineering while attending Belarusian State University. After graduating cum laude in Computer Science, he spent several years at a big software company but continued to pursue his RE hobby in free time. He had brief periods of internet fame after releasing a dumper for iTunes DRM-ed files (QTFairUse6) and hacking the Amazon Kindle. In 2008 he got his dream job at Hex-Rays where he is helping Ilfak Guilfanov to develop the world famous IDA Pro disassembler.